Skip to main content

32.2.2 Sending a Message

32.2.2 发送消息

Spring的AmqpTemplateAmqpAdmin会被自动配置,你可以将它们直接注入beans中:

import org.springframework.amqp.core.AmqpAdmin;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class MyBean {

private final AmqpAdmin amqpAdmin;
private final AmqpTemplate amqpTemplate;

@Autowired
public MyBean(AmqpAdmin amqpAdmin, AmqpTemplate amqpTemplate) {
this.amqpAdmin = amqpAdmin;
this.amqpTemplate = amqpTemplate;
}

// ...

}

可以使用相似方式注入RabbitMessagingTemplate,如果定义MessageConverter bean,它将自动关联到自动配置的AmqpTemplate

如果需要的话,所有定义为bean的org.springframework.amqp.core.Queue将自动在RabbitMQ实例中声明相应的队列。你可以启用AmqpTemplate的重试选项,例如代理连接丢失时,重试默认不启用。